<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>
        // setTimeout(fn , 1000) ;   // 正确的写法 fn没写括号     fn它不是立即调用的，在1s之后才被调用

        // setTimeout(fn() , 1000) ;   // 错误的写法  fn()  就会立即调用   打印的1  不是1s之后打印的而是立即打印的

        // function fn() {
        //     console.log(1);
        // }


        function f() {
            console.log(2);
            return function() {
                console.log(3);
            }
        }


        // setTimeout(f , 1000)    // 1s之后打印2
        


        // setTimeout(f() , 1000)   // 立即2  1s之后3


        // setTimeout((function() {
        //     console.log(5);
        //     return function() {
        //         console.log(4);
        //     }
        // })() , 1000)



        document.onclick = f()


        function f() {
            console.log(6);
            return function() {
                console.log('真正的事件处理函数');
            }
        }

    </script>
    
</body>
</html>